
<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .tab_list li {
            list-style: none;
            height: 39px;
            float: left;
            line-height: 39px;
            cursor: pointer;
            padding: 0 20px;
            /* 不加的话会继承父级的属性变成margin ：10px auto */
            margin: 0 auto
        }
        
        .tab_list {
            background-color: rgb(202, 198, 198);
            margin: 10px auto;
            text-align: center;
            height: 39px;
            text-align: center;
        }
        
        .tab_list .current {
            background-color: red;
            color: white
        }
        
        .item_info {
            padding: 20px 0 0 20px
        }
        
        .item {
            display: none
        }
    </style>
</head>
 
<body>
    <div class="tab">
        <div class="tab_list">
            <ul>
                <li class="current">商品介绍</li>
                <li>规格与包装</li>
                <li>售后保障</li>
                <li>商品评价</li>
                <li>手机社区</li>
 
            </ul>
        </div>
        <div class="tab_con">
            <div class="item" style="display:block">商品介绍模块内容</div>
            <div class="item">规格与包装模块内容</div>
            <div class="item">售后与保障模块内容</div>
            <div class="item">商品评价内容</div>
            <div class="item">手机社区内容</div>
        </div>
    </div>
    <script>
        var li = document.querySelectorAll('li')
        var item = document.querySelectorAll('.item')
        for (var i = 0; i < li.length; i++) { //这里形成一个闭包，最后i只能拿到最后面的值
            //一下给index属性进行设置
            li[i].setAttribute('index', i)
            li[i].onclick = function() { //点击一次，内部小循环运行一次,
                //先清除所有的效果
                for (var i = 0; i < li.length; i++) {//这里也可以用i，因为两者的作用域不同，一个是for循环的，一个是函数内部的，
                    li[i].className = ''
                        //注意display的书写
                    item[i].style.display = 'none'
                }
                //给自己赋值属性，一定要用this
                this.className = 'tab_list current'
                    //事件点击后，获得自定义属性的索引号,这个索引号和下面盒子是一一对应的
                item[this.getAttribute('index')].style.display = 'block' //这里不能用item[i]，因为最后i是一个4，最后i只能拿到最后面的值
            //一下给index属性进行设置
            }
        }
 
        //难点在此
    </script>
</body>
</html>